package org.lc.cmd.impl.sysreq;

import org.lc.cmd.CmdSession;
import org.lc.cmd.SentSysReq;
import org.lc.cmd.model.SysReqData;

import java.util.Collections;
import java.util.Map;

/**
 * 空数据的请求
 * 此请求只需要type，无需提供额外的数据
 *
 * @param <T>
 */
public abstract class EmptyDataSysReq<T> extends BaseSysReq implements SentSysReq<T> {
    public EmptyDataSysReq(String id, CmdSession session, boolean clientReq) {
        super(id, session, clientReq);
    }

    @Override
    public Map<String, String> getArgs() {
        return Collections.emptyMap();
    }

    @Override
    public SysReqData toTransferData() {
        return SysReqData.builder().sysReqId(getId()).type(getType()).args(null).build();
    }
}
